home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Games of Daze
/
Infomagic - Games of Daze (Summer 1995) (Disc 1 of 2).iso
/
gnuish
/
ginf
/
rcs_func.doc
< prev
next >
Wrap
Text File
|
1993-09-30
|
4KB
|
133 lines
Functions of RCS (Revision Control System)
RCS manages software libraries. It greatly increases
programmer productivity by providing the following func-
tions.
1. RCS stores and retrieves multiple revisions of program
and other text. Thus, one can maintain one or more
releases while developing the next release, with a
minimum of space overhead. Changes no longer destroy
the original -- previous revisions remain accessible.
a. Maintains each module as a tree of revisions.
b. Project libraries can be organized centrally,
decentralized, or any way you like.
c. RCS works for any type of text: programs, documen-
tation, memos, papers, graphics, VLSI layouts,
form letters, etc.
2. RCS maintains a complete history of changes. Thus, one
can find out what happened to a module easily and
quickly, without having to compare source listings or
having to track down colleagues.
a. RCS performs automatic record keeping.
b. RCS logs all changes automatically.
c. RCS guarantees project continuity.
3. RCS manages multiple lines of development.
4. RCS can merge multiple lines of development. Thus,
when several parallel lines of development must be con-
solidated into one line, the merging of changes is
automatic.
5. RCS flags coding conflicts. If two or more lines of
development modify the same section of code, RCS can
alert programmers about overlapping changes.
6. RCS resolves access conflicts. When two or more pro-
grammers wish to modify the same revision, RCS alerts
the programmers and makes sure that one modification
won't wipe out the other one.
7. RCS provides high-level retrieval functions. Revisions
can be retrieved according to ranges of revision
numbers, symbolic names, dates, authors, and states.
8. RCS provides release and configuration control. Revi-
sions can be marked as released, stable, experimental,
September 29, 1993
- 2 -
etc. Configurations of modules can be described simply
and directly.
9. RCS performs automatic identification of modules with
name, revision number, creation time, author, etc.
Thus, it is always possible to determine which revi-
sions of which modules make up a given configuration.
10. Provides high-level management visibility. Thus, it is
easy to track the status of a software project.
a. RCS provides a complete change history.
b. RCS records who did what when to which revision of
which module.
11. RCS is fully compatible with existing software develop-
ment tools. RCS is unobtrusive -- its interface to the
file system is such that all your existing software
tools can be used as before.
12. RCS' basic user interface is extremely simple. The
novice need to learn only two commands. Its more
sophisticated features have been tuned towards advanced
software development environments and the experienced
software professional.
13. RCS simplifies software distribution if customers main-
tain sources with RCS also. This technique assures
proper identification of versions and configurations,
and tracking of customer modifications. Customer modif-
ications can be merged into distributed versions
locally or by the development group.
14. RCS needs little extra space for the revisions (only
the differences). If intermediate revisions are
deleted, the corresponding differences are compressed
into the shortest possible form.
15. RCS is implemented with reverse deltas. This means that
the latest revision, which is the one that is accessed
most often, is stored intact. All others are regen-
erated from the latest one by applying reverse deltas
(backward differences). This results in fast access
time for the revision needed most often.
September 29, 1993